/*
# name: Windows 10
# author: Maxime Doyen
*/


* {
  padding: 0;
  -GtkToolButton-icon-spacing: 4;
  -GtkTextView-error-underline-color: #cc0000;
  -GtkScrolledWindow-scrollbar-spacing: 0;
  -GtkToolItemGroup-expander-size: 11;
  -GtkWidget-text-handle-width: 20;
  -GtkWidget-text-handle-height: 24;
  -GtkDialog-button-spacing: 4;
  -GtkDialog-action-area-border: 0;
  outline-color: rgba(0, 0, 0, 0.3);
  outline-style: dashed;
  outline-offset: -3px;
  outline-width: 1px;
  -gtk-outline-radius: 2px; }

/***************
 * Base States *
 ***************/
.background {
  color: @theme_fg_color;
  background-color: @theme_bg_color; }


/*
   These wildcard seems unavoidable, need to investigate.
   Wildcards are bad and troublesome, use them with care,
   or better, just don't.
   Everytime a wildcard is used a kitten dies, painfully.
*/
*:disabled {
  -gtk-icon-effect: dim; }

.gtkstyle-fallback {
  background-color:  @theme_fg_color;
  color: @theme_fg_color; }
  .gtkstyle-fallback:hover {
    background-color:  @theme_fg_color;
    color: @theme_fg_color; }
  .gtkstyle-fallback:active {
    background-color: #e6e6e6;
    color: @theme_fg_color; }
  .gtkstyle-fallback:disabled {
    background-color:  @theme_fg_color;
    color: #7f7f7f; }
  .gtkstyle-fallback:selected {
    background-color: @theme_selected_bg_color;
    color:  @theme_selected_fg_color; }

.view, iconview,
.view text,
iconview text,
textview text {
  color: @theme_fg_color;
  background-color: @theme_base_color; }
.view:hover:not(:selected), iconview:hover:not(:selected) {
    background-color: shade(@theme_base_color, 0.96); }
.view:selected {
      background-color: @theme_selected_bg_color; }
.view:selected:hover {
      background-color: alpha(@theme_selected_bg_color, 0.33); }
.view:disabled, iconview:disabled,
.view text:disabled,
iconview text:disabled,
textview text:disabled {
    color: @insensitive_fg_color;
  background-color: @insensitive_bg_color; }

.rubberband,
rubberband,
flowbox rubberband,
treeview.view rubberband,
.content-view rubberband {
  border: 1px solid @borders;
  background-color: rgba(0, 0, 0, 0.2); }

flowbox flowboxchild {
  padding: 3px; }
  flowbox flowboxchild:selected {
    outline-offset: -2px; }

label selection {
  background-color: alpha(@theme_selected_bg_color, 0.9);
  color: @theme_selected_fg_color;
  outline-color: rgba(255, 255, 255, 0.3); }
 label:disabled {
  color: @insensitive_fg_color; }


assistant .sidebar {
  background-color: shade(@theme_bg_color, 0.87); }
assistant.csd .sidebar {
  border-top-style: none; }
assistant .sidebar label {
  padding: 6px 12px; }
assistant .sidebar label.highlight {
   background-color: @theme_selected_bg_color; }

/*********************
 * Spinner Animation *
 *********************/
@keyframes spin {
  to {
    -gtk-icon-transform: rotate(1turn); } }
spinner {
  background: none;
  opacity: 0;
  -gtk-icon-source: -gtk-icontheme("process-working-symbolic"); }
  spinner:checked {
    opacity: 1;
    animation: spin 1s linear infinite; }
    spinner:checked:disabled {
      opacity: 0.5; }

/****************
 * Text Entries *
 ****************/
entry {
  min-height: 21px;
  padding: 2px 4px;
  transition: all 200ms ease-out;
  background-color: @theme_base_color;
  border-style: solid;
  border-width: 1px;
  border-color: @borders;
   }
  entry.flat, entry.flat:focus {
    padding: 2px;
    border-style: solid;
    border-width: 1px;
    border-color: @borders;
    border: none;
    border-radius: 0; }
  entry:focus {
    border-style: solid;
    border-width: 1px;
    border-color: @border_active;
    box-shadow: inset 0 0 0 1px alpha(@border_active, 0.50);
     }
  entry:disabled {
    border-style: solid;
    border-width: 1px;
    color: @insensitive_fg_color;
    background-color: @insensitive_bg_color;
    border-color: @insensitive_borders;
    }
  entry progress {
    margin: 1px;
    border-radius: 0;
    border-width: 0 0 2px;
    border-color: @progress_color;
    border-style: solid;
    background-image: none;
    background-color: transparent;
    box-shadow: none; }
  .linked entry:first-child {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }
    .linked entry:first-child:dir(rtl) {
      border-right-style: none; }
  .linked entry:last-child {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    border-left-style: none; }
    .linked entry:last-child:dir(rtl) {
      border-left-style: solid; }
  entry.error {
    color: #cc0000;
    border-color: #cc0000; }
    entry.error:focus {
      background-color: transparent;
      border-style: solid;
      border-width: 1px;
      background-image: linear-gradient(to bottom, #f7f7f7,  @theme_fg_color 90%);
      border-color: #cc0000;
       }
    entry.error:selected, entry.error:selected:focus {
      background-color: #cc0000; }
  entry.warning {
    color: #f57900;
    border-color: #f57900; }
    entry.warning:focus {
      background-color: transparent;
      border-style: solid;
      border-width: 1px;
      background-image: linear-gradient(to bottom, #f7f7f7,  @theme_fg_color 90%);
      border-color: #f57900;
       }
    entry.warning:selected, entry.warning:selected:focus {
      background-color: #f57900; }

/***********
 * Buttons *
 ***********/
button {
  transition: all 200ms ease-out;
  min-width:19px;
  min-height:19px;
  padding: 2px 4px;
  border-width: 1px;
  border-style: solid;
  color: @theme_fg_color;
  background-image: linear-gradient(to bottom, @gradient_default_s, @gradient_default_e);
  border-color: @borders; }
  button:hover, button.flat:hover {
    border-width: 1px;
    border-style: solid;
    border-color: @border_hover;
    background-image: linear-gradient(to bottom, @gradient_hover_s, @gradient_hover_e);
    -gtk-icon-effect: highlight; }
  button:active, button.flat:active, button:checked, button.flat:checked {
    border-width: 1px;
    border-style: solid;
    border-color: @border_active;
    background-image: linear-gradient(to bottom, @gradient_active_s, @gradient_active_e);
    transition-duration: 50ms; }
  button:disabled {
    border-width: 1px;
    border-style: solid;
    color: @insensitive_fg_color;
    border-color: @insensitive_borders;
    background-color: @insensitive_bg_color;
    background-image: none;
    text-shadow: none;
    -gtk-icon-shadow: none; }
    button:disabled:active, button:disabled.flat:active {
      border-width: 1px;
      border-style: solid;
    color: @insensitive_fg_color;
    border-color: @insensitive_borders;
    background-color: shade (@theme_bg_color, 0.99)
	}
  osd button {
    padding: 3px;
    border-width: 1px 1px 2px 1px;
    border-width: 1px;
    border-style: solid;
    background-image: none;
    background-color: rgba(0, 0, 0, 0.8);
    border-color: rgba(255, 255, 255, 0.2);
    box-shadow: none; }
    osd button:hover {
      border-width: 1px;
      border-style: solid;
      background-color: rgba(255, 255, 255, 0.01);
      border-color: rgba(255, 255, 255, 0.2);
      box-shadow: none; }
    osd button:active, osd button:checked {
      border-width: 1px;
      border-style: solid;
      background-color: rgba(255, 255, 255, 0.03);
      border-color: rgba(255, 255, 255, 0.2);
      box-shadow: none; }
    osd button:disabled {
      border-width: 1px;
      border-style: solid;
      border-color: rgba(255, 255, 255, 0.2);
      color: #7f7f7f; }
  button.suggested-action {
    border-width: 1px;
    border-style: solid;
    color:  @theme_fg_color;
    background-image: linear-gradient(to bottom, #5f9ddd, #4a90d9 40%, #3583d5);
    border-color: #1c5187; }
    button.suggested-action:hover {
      border-width: 1px;
      border-style: solid;
      color:  @theme_fg_color;
      border-color: #1c5187;
      background-image: linear-gradient(to bottom, #85b4e5, #5b9add 40%, #4a90d9); }
    button.suggested-action:active, button.suggested-action:checked {
      border-width: 1px;
      border-style: solid;
      border-color: #1c5187;
      background-image: linear-gradient(to bottom, #1c5187);
      color:  @theme_fg_color; }
    button.suggested-action:disabled {
      border-width: 1px;
      border-style: solid;
      color: #7f7f7f;
      border-color: @borders;
      background-image: linear-gradient(to bottom, #f1f1f1);
      text-shadow: none;
      -gtk-icon-shadow: none; }
  button.destructive-action {
    border-width: 1px;
    border-style: solid;
    color:  @theme_fg_color;
    background-image: linear-gradient(to bottom, #f14141, #ef2929 40%, #ed1212);
    border-color: #8e0b0b; }
    button.destructive-action:hover {
      border-width: 1px;
      border-style: solid;
      color:  @theme_fg_color;
      border-color: #8e0b0b;
      background-image: linear-gradient(to bottom, #f46b6b, #f03c3c 40%, #ef2929); }
    button.destructive-action:active, button.destructive-action:checked {
      border-width: 1px;
      border-style: solid;
      border-color: #8e0b0b;
      background-image: linear-gradient(to bottom, #8e0b0b);
      color:  @theme_fg_color; }
    button.destructive-action:disabled {
      border-width: 1px;
      border-style: solid;
      color: #7f7f7f;
      border-color: @borders;
      background-image: linear-gradient(to bottom,  @theme_fg_color);
      text-shadow: none;
      -gtk-icon-shadow: none; }
  button.toggle {
   padding: 4px 8px }
  button.image-button {
    padding: 4px; }
  button.text-button {
    padding: 4px 6px; }
  .primary-toolbar button {
    -gtk-icon-shadow: none; }

.inline-toolbar toolbutton > button {
  border-width: 1px;
  border-style: solid;
  color: @theme_fg_color;
  background-image: linear-gradient(to bottom, @gradient_normal_s, @gradient_normal_e);
  border-color: @borders; }
  .inline-toolbar toolbutton > button:hover {
    border-width: 1px;
    border-style: solid;
    color: @theme_fg_color;
    border-color: @borders;
    background-image: linear-gradient(to bottom, @gradient_hover_s, @gradient_hover_e); }
  .inline-toolbar toolbutton > button:active {
    border-width: 1px;
    border-style: solid;
    border-color: @border_active;
    background-image: linear-gradient(to bottom, @gradient_active_s, @gradient_active_e);
    color:  @theme_fg_color; }
  .inline-toolbar toolbutton > button:disabled {
    border-width: 1px;
    border-style: solid;
    color: @insensitive_fg_color;
    border-color: @insensitive_borders;
    background-color: @insensitive_bg_color;
	background-image: none;
    text-shadow: none;
    -gtk-icon-shadow: none; }
  .inline-toolbar toolbutton > button:disabled:active {
    border-width: 1px;
    border-style: solid;
    color: @insensitive_fg_color;
    border-color: @insensitive_borders;
    background-color: @insensitive_bg_color;
	background-image: none; }

.inline-toolbar.toolbar toolbutton > button.flat {
  border-radius: 0;
  border-left-style: none; }
.inline-toolbar.toolbar toolbutton:first-child > button.flat {
  border-radius: 0;
  border-left-style: solid; }
.inline-toolbar.toolbar toolbutton:last-child > button.flat {
  border-radius: 0; }
.inline-toolbar.toolbar toolbutton:last-child:dir(rtl) > button.flat {
  border-right-style: solid; }
.inline-toolbar.toolbar toolbutton:only-child > button.flat {
  border-radius: 0;
  border-style: solid; }


toolbar toolbutton button:hover {
  border: solid 1px @borders; }

osd button, osd button:hover, osd button:active, osd button:checked, osd button:disabled, inline-toolbar button, .linked button, .linked > combobox > box > button:dir(ltr) {
  border-radius: 0;
  border-left-style: none; }
  osd button:dir(rtl), inline-toolbar button:dir(rtl), .linked button:dir(rtl), .linked > combobox > box > button:dir(rtl) {
    border-radius: 0;
    border-right-style: none;
    border-left-style: solid; }

osd button:first-child, inline-toolbar button:first-child, .linked button:first-child, .linked > combobox:first-child > box > button {
  border-radius: 0;
  border-left-style: solid; }
osd button:last-child, inline-toolbar button:last-child, .linked button:last-child, .linked > combobox:last-child > box > button {
  border-radius: 0; }
osd button:last-child:dir(rtl), inline-toolbar button:last-child:dir(rtl), .linked button:last-child:dir(rtl), .linked > combobox:last-child > box > button:dir(rtl) {
    border-right-style: solid; }
osd button:only-child, inline-toolbar button:only-child, .linked button:only-child, .linked > combobox:only-child > box > button {
  border-radius: 0;
  border-style: solid; }

button.flat, menuitembutton.flat, button:link, button:visited, button:link:hover, button:link:active, button:visited:hover, button:visited:active, notebook tab button, .list-rowbutton, GtkCalendarbutton, GtkCalendarbutton:hover {
  border-color: transparent;
  background-color: transparent;
  background-image: none;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0);
  text-shadow: none;
  -gtk-icon-shadow: none; }

  .stack-switcher >
  button > label {
  padding-left:9px;
  padding-right:9px;
}

/* menu buttons */
modelbutton.flat, popover.background checkbutton,
popover.background radiobutton,
.menuitem.button.flat {
  padding: 4px;
  /*min-height: 26px;
  padding-left: 5px;
  padding-right: 5px;
  border-radius: 3px;*/
  outline-offset: -1px; }
  modelbutton.flat:hover, popover.background checkbutton:hover,
  popover.background radiobutton:hover,
  .menuitem.button.flat:hover {
    background-color: alpha( @theme_selected_bg_color, 0.33); }
  modelbutton.flat check:last-child, popover.background checkbutton check:last-child,
  popover.background radiobutton check:last-child,
  modelbutton.flat radio:last-child,
  popover.background checkbutton radio:last-child,
  popover.background radiobutton radio:last-child,
  .menuitem.button.flat check:last-child,
  .menuitem.button.flat radio:last-child {
    margin-left: 8px; }
  modelbutton.flat check:first-child, popover.background checkbutton check:first-child,
  popover.background radiobutton check:first-child,
  modelbutton.flat radio:first-child,
  popover.background checkbutton radio:first-child,
  popover.background radiobutton radio:first-child,
  .menuitem.button.flat check:first-child,
  .menuitem.button.flat radio:first-child {
    margin-right: 8px; }

modelbutton.flat arrow, popover.background checkbutton arrow,
popover.background radiobutton arrow {
  background: none; }
  modelbutton.flat arrow:hover, popover.background checkbutton arrow:hover,
  popover.background radiobutton arrow:hover {
    background: none; }
  modelbutton.flat arrow.left, popover.background checkbutton arrow.left,
  popover.background radiobutton arrow.left {
    -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); }
  modelbutton.flat arrow.right, popover.background checkbutton arrow.right,
  popover.background radiobutton arrow.right {
    -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); }

button.color {
  padding: 4px; }

/*********
 * Links *
 *********/
*:link {
  color: @theme_selected_bg_color; }
  *:link:hover, *:link:active, *:link:visited {
    color: @theme_fg_color; }

button:link,
button:visited {
  color: @theme_selected_bg_color;
  text-shadow: none; }
  button:link:hover, button:link:active, button:visited:hover, button:visited:active {
    color: @theme_fg_color;
    text-shadow: none; }

/*****************
 * GtkSpinButton *
 *****************/
spinbutton {
  padding: 0;
  border: none; }
  spinbutton:disabled {
    color: @insensitive_fg_color;
  }

spinbutton button {
    background-image: linear-gradient(to bottom, @gradient_default_s, @gradient_default_e);
    border-width: 1px;
    border-color: @borders;
    color: @theme_fg_color;
    border-radius: 0;
    box-shadow: none;
  padding: 0 2px;  }
  spinbutton button:dir(rtl) {
      border-width: 0 1px 0 0; }
    spinbutton button:hover {
      color: @theme_fg_color;
      border-color: @border_hover;
      background-image: linear-gradient(to bottom, @gradient_hover_s, @gradient_hover_e); }
  spinbutton button:disabled {
    background-image: none;
    color: @insensitive_fg_color;
    border-color: @insensitive_borders;
    background-color: @insensitive_bg_color;}
    spinbutton button:active {
      background-image: linear-gradient(to bottom, @gradient_active_s, @gradient_active_e); }
  spinbutton.vertical entry {
    /*padding: 4px 0;*/ }
  spinbutton.horizontal button.up {
    border-width: 1px 1px 1px 0px; }
  spinbutton.horizontal button.down {
    border-width: 1px 1px 1px 0px; }
  spinbutton.vertical button.up {
    border-width: 1px 1px 0px 1px; }
  spinbutton.vertical button.down {
    border-width: 0px 1px 1px 1px; }



/**************
 * ComboBoxes *
 **************/
combobox arrow {
  -gtk-icon-source: -gtk-icontheme("pan-down-symbolic");
  margin: 2px;
  min-height: 16px;
  min-width: 16px; }
combobox:drop(active) {
  box-shadow: none; }

/************
 * Toolbars *
 ************/
toolbar, .inline-toolbar, searchbar,
.location-bar {
  -GtkWidget-window-dragging: true;
  padding: 4px;
  /*background-color: #e8e8e7;*/ }

toolbar {
  padding: 4px 3px 3px 4px; }
  .osd toolbar {
    background-color: transparent; }
  toolbar.osd {
    background-color: rgba(0, 0, 0, 0.8);
    border-radius: 0;
    padding: 12px; }
  toolbarinline-toolbar {
    border-width: 0 1px 1px;
    padding: 3px;
    border-radius: 0; }

searchbar {
  border-width: 0 0 1px;
  padding: 3px; }

toolbar.inline-toolbar, searchbar.inline-toolbar {
  border-width: 0 1px 1px 1px;
  border-style: solid;
  border-color: @borders;
  background-color: shade(@theme_bg_color, 0.92); }

/***************
 * Header bars *
 ***************/
.titlebar,
headerbar {
  /*border-width: 0 0 1px;
  border-style: solid;
  border-color: shade(@theme_bg_color, 0.95);*/
  background-color: @theme_base_color;
  /*background-image: linear-gradient(to bottom, @theme_base_color 50%, @theme_bg_color);*/
  padding: 2px; }
  titlebar title,
  headerbar title {
    font: Bold;
    padding: 0px 6px; }
  titlebar subtitle,
  headerbar subtitle {
    font-size: 80%;
    padding: 0 6px; }
  .titlebar headerbar-separator, titlebar > box > separator.vertical,
  headerbar headerbar-separator,
  headerbar > box > separator.vertical {
    border-width: 0 1px;
    border-image: linear-gradient(to bottom, rgba(127, 127, 127, 0), #7f7f7f 30%, #7f7f7f 70%, rgba(127, 127, 127, 0) 100%) 0 1/0 1px stretch; }
  titlebar.selection-mode,
  headerbar.selection-mode {
    color: @theme_fg_color;
    text-shadow: 0 1px rgba(0, 0, 0, 0.5);
    background-image: linear-gradient(to bottom, #0d0d0d, #050505);
    box-shadow: inset 0 -1px #d8d8d8, inset 0 1px #7f7f7f; }
    titlebar.selection-mode button,
    headerbar.selection-mode button {
      border-width: 1px;
      border-style: solid;
      color:  @theme_fg_color;
      background-image: linear-gradient(to bottom, #0d0d0d, @theme_fg_color 40%, @theme_fg_color);
      border-color: @theme_fg_color; }
      titlebar.selection-mode button:hover,
      headerbar.selection-mode button:hover {
        border-width: 1px;
        border-style: solid;
        color:  @theme_fg_color;
        border-color: @theme_fg_color;
        background-image: linear-gradient(to bottom, #242424, #0a0a0a 40%, @theme_fg_color); }
      titlebar.selection-mode button:active,
      headerbar.selection-mode button:active {
        border-width: 1px;
        border-style: solid;
        border-color: @theme_fg_color;
        background-image: linear-gradient(to bottom, @theme_fg_color);
        color:  @theme_fg_color; }
      titlebar.selection-mode button:disabled,
      headerbar.selection-mode button:disabled {
        border-width: 1px;
        border-style: solid;
        color: #7f7f7f;
        border-color: @borders;
        background-image: linear-gradient(to bottom,  @theme_fg_color);
        text-shadow: none;
        -gtk-icon-shadow: none; }
      titlebar.selection-mode button.suggested-action,
      headerbar.selection-mode button.suggested-action {
        border-width: 1px;
        border-style: solid;
        color: @theme_fg_color;
        background-image: linear-gradient(to bottom,  @theme_fg_color,  @theme_fg_color 40%, #f2f2f2);
        border-color: @borders; }
        titlebar.selection-mode button.suggested-action:hover,
        headerbar.selection-mode button.suggested-action:hover {
          border-width: 1px;
          border-style: solid;
          color: @theme_fg_color;
          border-color: @borders;
          background-image: linear-gradient(to bottom,  @theme_fg_color,  @theme_fg_color 40%,  @theme_fg_color); }
        titlebar.selection-mode button.suggested-action:active,
        headerbar.selection-mode button.suggested-action:active {
          border-width: 1px;
          border-style: solid;
          border-color: @borders;
          background-image: linear-gradient(to bottom, #7f7f7f);
          color:  @theme_fg_color; }
        titlebar.selection-mode button.suggested-action:disabled,
        headerbar.selection-mode button.suggested-action:disabled {
          border-width: 1px;
          border-style: solid;
          color: #7f7f7f;
          border-color: @borders;
          background-image: linear-gradient(to bottom,  @theme_fg_color);
          text-shadow: none;
          -gtk-icon-shadow: none; }
    .titlebar.selection-mode selection-menu,
    headerbar.selection-mode selection-menu {
      border-width: 0;
      background-image: none;
      box-shadow: none; }
  .tiled .titlebar, .maximized .titlebar, .tiled
  headerbar, .maximized
  headerbar {
    border-radius: 0; }

/************
 * Pathbars *
 ************/
.path-bar button {
  padding: 5px 6px 6px; }
  .path-bar button:first-child {
    padding-left: 8px; }
  .path-bar button:last-child {
    padding-right: 8px; }
  .path-bar button:only-child {
    padding-left: 12px;
    padding-right: 12px; }
  .path-bar button label:last-child {
    padding-left: 2px; }
  .path-bar button label:first-child {
    padding-right: 2px; }
  .path-bar button label:only-child {
    padding-right: 0;
    padding-left: 0; }
  .path-bar button image {
    padding-top: 1px; }

/**************
 * Tree Views *
 **************/
treeview.view {
  -GtkTreeView-grid-line-width: 1;
  -GtkTreeView-grid-line-pattern: '';
  -GtkTreeView-tree-line-width: 1;
  -GtkTreeView-tree-line-pattern: '';
  -GtkTreeView-expander-size: 16;
  border-left-color: @theme_bg_color;
  border-top-color: @theme_bg_color; }
  treeview.view:selected {
    border-radius: 0; }
  treeview.view:selected {
    border-left-color: @theme_selected_fg_color;
    border-top-color: @theme_selected_fg_color; }
  treeview.view:disabled {
  background-color: @theme_bg_color;
    color: @insensitive_fg_color; }
    treeview.view:disabled:selected {
      color: #666666; }
   treeview.view.dnd {
    border-style: solid none;
    border-width: 1px;
    border-color: black; }
  treeview.view.expander {
    -gtk-icon-source: -gtk-icontheme("pan-end-symbolic");
    color: @theme_fg_color; }
    treeview.view.expander:dir(rtl) {
      -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); }
    treeview.view.expander:hover {
      color: @theme_selected_fg_color; }
    treeview.view.expander:selected {
      color: @theme_selected_fg_color; }
      treeview.view.expander:selected:hover {
        color: #fff; }
     treeview.view.expander:checked {
      -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); }
  treeview.view.progressbar {
    color: #fff;
    border: 1px solid #000;
    border-radius: 4px;
    background-color: #000; }
    treeview.view.progressbar:selected {
      color: #000; }
  treeview.view.trough {
    background-color: rgba(0, 0, 0, 0.1);
    border-radius: 4px; }
    treeview.view.trough:selected {
      background-color: rgba(255, 255, 255, 0.3);
      border-width: 1px 0;
      border-style: solid;
      border-color: #000; }
  treeview.view header button {
    background-color: @theme_base_color;
    color: @theme_fg_color;
    font-weight: bold;
    text-shadow: none;
    box-shadow: none; }
    treeview.view header button:hover {
      color: #404040;
      box-shadow: none; }
    treeview.view header button:active {
      color: #fff; }
  treeview.view header button:last-child, treeview.view header button:last-child:hover, treeview.view header button:last-child:backdrop {
    border-right-style: none; }

treeview.view header button, treeview.view header button:hover, treeview.view header button:active {
  padding: 3px 6px;
  border-style: none solid solid none;
  border-radius: 0;
  border-width: 1px;
  background-image: none;
  border-color: @theme_bg_color;
  text-shadow: none; }
  treeview.view header button:disabled {
    border-color: @insensitive_borders;
    background-image: none; }

treeview.view.progressbar {
  color: #fff;
  border-radius: 4px;
  background-image: linear-gradient(to bottom, #000, black); }
  treeview.view.progressbar:selected {
    color: #000;
    background-image: linear-gradient(to bottom, #fff, #e6e6e6); }
    treeview.view.progressbar:selected:backdrop {
      color: #000;
      background-image: none;
      background-color: #fff; }
  treeview.view.progressbar:backdrop {
    color: #fff;
    background-image: none; }

/*********
 * Menus *
 *********/
menubar,
.menubar {
  padding: 0px;
  background-color: transparent; }
  menubar > menuitem,
  .menubar > menuitem {
    padding: 2px 8px 2px 8px;
	border: 1px solid transparent; }
    menubar > menuitem:hover,
    .menubar > menuitem:hover
    {
 	border: 1px solid @menubaritem_border;
	background-color: @menubaritem_bg_color;
	color: @theme_fg_color; }
    menubar > menuitem:disabled,
    .menubar > menuitem:disabled {
      color: #7f7f7f;
      box-shadow: none; }

menu,
.menu {
  padding: 0px;
  background-color: @theme_bg_color;
  border: 1px solid @borders;
  }
  menu menuitem,
  .menu menuitem {
    padding: 4px;
    border: 1px solid transparent;
    }
    menu menuitem:hover,
    .menu menuitem:hover {
        border: 1px solid @menubaritem_border;
	background-color: @menubaritem_bg_color;
	color: @theme_fg_color;}
    menu menuitem:disabled,
    .menu menuitem:disabled {
      color: #7f7f7f; }
    menu menuitem arrow,
    .menu menuitem arrow {
      min-height: 16px;
      min-width: 16px; }
    menu menuitem arrow:dir(ltr),
    .menu menuitem arrow:dir(ltr) {
      -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); }
    menu menuitem arrow:dir(rtl),
    .menu menuitem arrow:dir(rtl) {
      -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); }

menuitem accelerator {
  color: alpha(currentColor,0.55); }

/* todo */
menuitem check, menuitem radio {
  min-height: 16px;
  min-width: 16px; }
  menuitem check:dir(ltr), menuitem radio:dir(ltr) {
    margin-right: 7px; }
  menuitem check:dir(rtl), menuitem radio:dir(rtl) {
    margin-left: 7px; }

/***************
 * Popovers   *
 ***************/
popover {
  margin: 10px;
  padding: 2px;
  border-color: @borders;
  border-width: 1px;
  border-style: solid;
  border-radius: 3px;
  background-color: @theme_bg_color;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.5); }
  popover > .list, popover > .view, popover > toolbar {
    background-color: transparent; }
  popover separator {
    font-size: 80%;
    font-weight: bold;
    color: #cccccc;
    text-shadow: none;
    background-color: shade (@theme_bg_color, 0.87);
    -gtk-icon-shadow: none;
    border: 0; }
  popover button.flat,
  popover button.flat:hover {
    color: @theme_fg_color;
    text-shadow: none;
    transition: none; }
  popoverosd {
    background-image: none;
    background-color: rgba(0, 0, 0, 0.8);
    border: 1px solid #7f7f7f;
    color:  @theme_fg_color; }
    popoverosd button {
      color:  @theme_fg_color;
      text-shadow: none;
      border-width: 1px;
      border-style: solid;
      background-image: none;
      background-color: rgba(0, 0, 0, 0.8);
      border-color: rgba(255, 255, 255, 0.2);
      box-shadow: none; }
      popoverosd button:hover {
        border-width: 1px;
        border-style: solid;
        background-color: rgba(255, 255, 255, 0.01);
        border-color: rgba(255, 255, 255, 0.2);
        box-shadow: none; }
      popoverosd button:active {
        border-width: 1px;
        border-style: solid;
        background-color: rgba(255, 255, 255, 0.03);
        border-color: rgba(255, 255, 255, 0.2);
        box-shadow: none; }
      popoverosd button:disabled {
        border-width: 1px;
        border-style: solid;
        border-color: rgba(255, 255, 255, 0.2);
        color: #7f7f7f; }

.cursor-handle {
  background-color: transparent;
  background-image: none; }
  .cursor-handle.top {
    -gtk-icon-source: -gtk-icontheme("selection-start-symbolic"); }
  .cursor-handle.bottom {
    -gtk-icon-source: -gtk-icontheme("selection-end-symbolic"); }

/*****************
 * Notebooks and *
 * Tabs          *
 *****************/

notebook {
  padding: 0; }
  notebook > header {
    background-color: @theme_bg_color; }
    notebook > header.top, notebook > header.bottom {
      padding-left: 0;
      padding-right: 0; }
    notebook > header.left, notebook > header.right {
      padding-top: 0;
      padding-bottom: 0; }

    notebook > header tabs {
      min-height: 21px; }

    notebook > header.top {
      border-bottom-style: solid; }
      notebook > header.top > tabs {

        margin-bottom: -1px; }

        notebook > header > tabs > tab:checked, notebook > header > tabs > tab:checked:hover {
          color: @theme_fg_color;
          background-color: @theme_base_color;
          border: 1px solid shade(@theme_bg_color, 0.72); }

        notebook > header.top > tabs > tab:hover {
          box-shadow: none; }
        notebook > header.top > tabs > tab:checked, notebook > header.top > tabs > tab:checked:hover {
    border-width: 1px 1px 0 1px; }

    notebook > header.bottom {
      border-top-style: solid; }
      notebook > header.bottom > tabs {
        margin-top: -1px; }
        notebook > header.bottom > tabs > tab:hover { }
        notebook > header.bottom > tabs > tab:checked, notebook > header.bottom > tabs > tab:checked:hover {
          border-width: 0 1px 1px 1px; }

    notebook > header.left {
      border-right-style: solid; }
      notebook > header.left > tabs {
        margin-right: -1px; }
        notebook > header.left > tabs > tab:hover { }
        notebook > header.left > tabs > tab:checked, notebook > header.left > tabs > tab:checked:hover {
          border-width: 1px 0 1px 1px; }

    notebook > header.right {
      border-left-style: solid; }
      notebook > header.right > tabs {
        margin-left: -1px; }
        notebook > header.right > tabs > tab:hover { }
        notebook > header.right > tabs > tab:checked, notebook > header.right > tabs > tab:checked:hover {
          border-width: 1px 1px 1px 0;  }

    notebook > header.top > tabs > arrow {
      border-top-style: none; }
    notebook > header.bottom > tabs > arrow {
      border-bottom-style: none; }
    notebook > header.top > tabs > arrow, notebook > header.bottom > tabs > arrow {
      margin-left: -5px;
      margin-right: -5px;
      padding-left: 4px;
      padding-right: 4px; }
      notebook > header.top > tabs > arrow.down, notebook > header.bottom > tabs > arrow.down {
        -gtk-icon-source: -gtk-icontheme("pan-start-symbolic"); }
      notebook > header.top > tabs > arrow.up, notebook > header.bottom > tabs > arrow.up {
        -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); }
    notebook > header.left > tabs > arrow {
      border-left-style: none; }
    notebook > header.right > tabs > arrow {
      border-right-style: none; }
    notebook > header.left > tabs > arrow, notebook > header.right > tabs > arrow {
      margin-top: -5px;
      margin-bottom: -5px;
      padding-top: 4px;
      padding-bottom: 4px; }
      notebook > header.left > tabs > arrow.down, notebook > header.right > tabs > arrow.down {
        -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); }
      notebook > header.left > tabs > arrow.up, notebook > header.right > tabs > arrow.up {
        -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); }
    notebook > header > tabs > arrow {
      min-height: 16px;
      min-width: 16px;
      border-radius: 0; }
      notebook > header > tabs > arrow:hover:not(:active):not(:backdrop) {
        background-clip: padding-box;
        background-image: none;
        background-color: rgba(255, 255, 255, 0.3);
        border-color: transparent;
        box-shadow: none; }
      notebook > header > tabs > arrow:disabled {
        border-color: transparent;
        background-color: transparent;
        background-image: none;
        box-shadow: inset 0 1px rgba(255, 255, 255, 0), 0 1px rgba(255, 255, 255, 0);
        text-shadow: none;
        -gtk-icon-shadow: none; }

    notebook > header tab {
      min-height: 20px;
      min-width: 20px;
      padding: 2px 10px;
      outline-offset: -4px;
      color: #818181;
      font-weight: normal;
      border-width: 1px;
      border-color: transparent; }
      notebook > header tab:hover {
        color: #575757; }
        notebook > header tab:hover.reorderable-page {
          border-color: rgba(176, 176, 176, 0);
          background-color: rgba(247, 247, 247, 0.2); }
      notebook > header tab:checked {
        color: #2c2c2c; }
        notebook > header tab:checked.reorderable-page {
          border-color: rgba(176, 176, 176, 0.5);
          background-color: rgba(214, 214, 214, 0.5); }
          notebook > header tab:checked.reorderable-page:hover {
            background-color: rgba(214, 214, 214, 0.7); }
      notebook > header tab button.flat {
        color: rgba(44, 44, 44, 0.3);
        padding: 0;
        min-width: 20px; }
        notebook > header tab button.flat:hover {
          color: currentColor; }
        notebook > header tab button.flat:last-child {
          margin-left: 4px;
          margin-right: -4px; }
        notebook > header tab button.flat:first-child {
          margin-left: -4px;
          margin-right: 4px; }
    notebook > header.top tabs, notebook > header.bottom tabs {
      padding-left: 0px;
      padding-right: 0px; }
      notebook > header.top tabs:not(:only-child), notebook > header.bottom tabs:not(:only-child) {
        margin-left: 0px;
        margin-right: 0px; }
        notebook > header.top tabs:not(:only-child):first-child, notebook > header.bottom tabs:not(:only-child):first-child {
          margin-left: 0px; }
        notebook > header.top tabs:not(:only-child):last-child, notebook > header.bottom tabs:not(:only-child):last-child {
          margin-right: 0px; }
      notebook > header.top tabs tab, notebook > header.bottom tabs tab {
        margin-left: 0px;
        margin-right: 0px; }
        notebook > header.top tabs tab.reorderable-page, notebook > header.bottom tabs tab.reorderable-page {
          border-style: none solid; }
    notebook > header.left tabs, notebook > header.right tabs {
      padding-top: 0px;
      padding-bottom: 0px; }
      notebook > header.left tabs:not(:only-child), notebook > header.right tabs:not(:only-child) {
        margin-top: 0px;
        margin-bottom: 0px; }
        notebook > header.left tabs:not(:only-child):first-child, notebook > header.right tabs:not(:only-child):first-child {
          margin-top: 0px; }
        notebook > header.left tabs:not(:only-child):last-child, notebook > header.right tabs:not(:only-child):last-child {
          margin-bottom: 0px; }
      notebook > header.left tabs tab, notebook > header.right tabs tab {
        margin-top: 0px;
        margin-bottom: 0px; }
        notebook > header.left tabs tab.reorderable-page, notebook > header.right tabs tab.reorderable-page {
          border-style: solid none; }
    notebook > header.top tab {
      padding-bottom: 2px; }
    notebook > header.bottom tab {
      padding-top: 2px; }
  notebook > stack:not(:only-child) {
    background-color: @theme_base_color; }

/**************
 * Scrollbars *
 **************/
scrollbar, .scrollbar {
  background-color: @theme_bg_color;
  border-width: 0; }
  * {
    -GtkScrollbar-has-backward-stepper: true;
    -GtkScrollbar-has-forward-stepper: true; }
  scrollbar.top, .scrollbar.top {
    border-bottom: 0px solid @borders; }
  scrollbar.bottom, .scrollbar.bottom {
    border-top: 0px solid @borders; }
  scrollbar.left, .scrollbar.left {
    border-right: 0px solid @borders; }
  scrollbar.right, .scrollbar.right {
    border-left: 0px solid @borders; }
  scrollbar slider, scrollbar .slider, .scrollbar slider, .scrollbar .slider {
    min-width: 16px;
    min-height: 16px;
    margin: 0px;
    border: 0;
    background-clip: padding-box;
    background-color: shade(@theme_bg_color, 0.7); }
    scrollbar slider:hover, scrollbar .slider:hover, .scrollbar slider:hover, .scrollbar .slider:hover {
      background-color: shade(@theme_bg_color, 0.6); }
    scrollbar slider:hover:active, scrollbar .slider:hover:active, .scrollbar slider:hover:active, .scrollbar .slider:hover:active {
      background-color: shade(@theme_bg_color, 0.4); }
    scrollbar slider:disabled, scrollbar .slider:disabled, .scrollbar slider:disabled, .scrollbar .slider:disabled {
      background-color: transparent; }
  scrollbar.fine-tune slider, scrollbar.fine-tune .slider, .scrollbar.fine-tune slider, .scrollbar.fine-tune .slider {
    min-width: 16px;
    min-height: 16px; }
  scrollbar.fine-tune.horizontal slider, scrollbar.fine-tune.horizontal .slider, .scrollbar.fine-tune.horizontal slider, .scrollbar.fine-tune.horizontal .slider {
    border-width: 0; }
  scrollbar.fine-tune.vertical slider, scrollbar.fine-tune.vertical .slider, .scrollbar.fine-tune.vertical slider, .scrollbar.fine-tune.vertical .slider {
    border-width: 0; }
  scrollbar.overlay-indicator:not(.dragging):not(.hovering), .scrollbar.overlay-indicator:not(.dragging):not(.hovering) {
    border-color: transparent;
    opacity: 0.4;
    background-color: transparent; }
    scrollbar.overlay-indicator:not(.dragging):not(.hovering) slider, scrollbar.overlay-indicator:not(.dragging):not(.hovering) .slider, .scrollbar.overlay-indicator:not(.dragging):not(.hovering) slider, .scrollbar.overlay-indicator:not(.dragging):not(.hovering) .slider {
      margin: 0;
      min-width: 16px;
      min-height: 16px;
      background-color: #2c2c2c;
      border: 0px solid white; }
    scrollbar.overlay-indicator:not(.dragging):not(.hovering) button, scrollbar.overlay-indicator:not(.dragging):not(.hovering) .button, .scrollbar.overlay-indicator:not(.dragging):not(.hovering) button, .scrollbar.overlay-indicator:not(.dragging):not(.hovering) .button {
      min-width: 16px;
      min-height: 16px;
      background-clip: padding-box;
      border: 1px solid transparent;}
    scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal slider, scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal .slider, .scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal slider, .scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal .slider {
      margin: 0 0px;
      border: 0;
      min-width: 40px; }
    scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button, scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal .button, .scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button, .scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal .button {
      /*margin: -1px;*/
      min-width: 16px; }
    scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical slider, scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical .slider, .scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical slider, .scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical .slider {
      margin: 0px 0;
      border: 0;
      min-height: 40px; }
    scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button, scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical .button, .scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button, .scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical .button {
      /*margin: -1px;*/
      min-height: 16px; }
  scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering, .scrollbar.overlay-indicator.dragging, .scrollbar.overlay-indicator.hovering {
    opacity: 0.8; }
  scrollbar.horizontal slider, scrollbar.horizontal .slider, .scrollbar.horizontal slider, .scrollbar.horizontal .slider {
    min-width: 40px; }
  scrollbar.vertical slider, scrollbar.vertical .slider, .scrollbar.vertical slider, .scrollbar.vertical .slider {
    min-height: 40px; }
  scrollbar button, scrollbar .button, .scrollbar button, .scrollbar .button {
    padding: 0px;
    min-width: 16px;
    min-height: 16px;
    border: 1px solid @borders;
    transition-property: min-height, min-width, color;
    box-shadow: none;
    color: #707070; }
    scrollbar button:hover, scrollbar .button:hover, .scrollbar button:hover, .scrollbar .button:hover {
      color: #4e4e4e;
      box-shadow: none; }
    scrollbar button:active, scrollbar button:checked, scrollbar .button:active, scrollbar .button:checked, .scrollbar button:active, .scrollbar button:checked, .scrollbar .button:active, .scrollbar .button:checked {
      box-shadow: none;
      color: #0080ff; }
    scrollbar button:disabled, scrollbar .button:disabled, .scrollbar button:disabled, .scrollbar .button:disabled {
      color: rgba(112, 112, 112, 0.2);
      box-shadow: none; }
  scrollbar.vertical button.down {
    -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); }
  scrollbar.vertical button.up {
    -gtk-icon-source: -gtk-icontheme("pan-up-symbolic"); }
  scrollbar.horizontal button.down {
    -gtk-icon-source: -gtk-icontheme("pan-right-symbolic"); }
  scrollbar.horizontal button.up {
    -gtk-icon-source: -gtk-icontheme("pan-left-symbolic"); }

treeview ~ scrollbar.vertical {
  border-top: 1px solid transparent;
  margin-top: -1px; }



/**********
 * Switch *
 **********/
switch {
  font-weight: bold;
  font-size: smaller;
  outline-offset: -4px;
  border: 1px solid @borders;
  color: @theme_fg_color;
  background: shade (@theme_bg_color, 0.96); }
  switch:checked {
   color: @theme_fg_selected_color;
    border-color: @border_active;
    background-image: linear-gradient(to bottom, @gradient_active_s, @gradient_active_e);
   background: @theme_selected_bg_color; }
  switch:disabled {
    color: @insensitive_fg_color;
    border-color: @insensitive_borders;
    background-color: @insensitive_bg_color;
    background-image: none; }
  switch slider {
    margin: -1px;
    border: 1px solid @borders;
    transition: all 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
    color: @theme_fg_color;
    background: @theme_bg_color; }
  switch:hover slider {
    border-color: @border_hover;
    background-image: none;
    background: shade(@theme_bg_color, 1.02); }
  switch:checked slider {
    border: 1px solid @border_hover; }
  switch:disabled slider {
    border-color: @insensitive_borders;
    background: @insensitive_bg_color;
    text-shadow: none;
    -gtk-icon-shadow: none; }
    switch:disabled slider label, switch:disabled slider {
      color: #8b8e8f; }
  row:selected switch {
    box-shadow: none;
    border-color: green; }
    row:selected switch.slider:dir(rtl) {
      border-left-color: #9d9d99; }
    row:selected switch.slider:dir(ltr) {
      border-right-color: #9d9d99; }
    row:selected switch.slider:checked, row:selected switch.slider {
      border-color: #184472; }


/*************************
 * Check and Radio items *
 *************************/
checkbutton > label, radiobutton > label {
  padding-left: 6px; }

checkbutton.text-button, radiobutton.text-button {
  padding: 1px;
  outline-offset: 0; }

check {
  color: @theme_fg_color;
  -gtk-icon-source: none;
  background-image: url("assets/checkbox-unchecked.png"); }
  check:hover {
    color: @theme_selected_bg_color;
    background-image: url("assets/checkbox-unchecked-over.png"); }
  check:checked, check:active {
    background-image: url("assets/checkbox-checked.png");
    color: @theme_fg_color; }
    check:checked:hover, check:active:hover {
      background-image: url("assets/checkbox-checked-over.png");  }
    check:checked:disabled, check:active:disabled {
      color: @insensitive_fg_color;
      background-image: url("assets/checkbox-checked-insensitive.png");  }
  check:disabled {
    color: @insensitive_fg_color;
    background-image: url("assets/checkbox-unchecked-insensitive.png");  }
  check:indeterminate {
    background-image: url("assets/checkbox-mixed.png"); }
  check:indeterminate:disabled {
    background-image: url("assets/checkbox-mixed-insensitive.png"); }

radio {
  color: @theme_fg_color;
  -gtk-icon-source: none;
  background-image: url("assets/radio-unselected.png"); }
  radio:hover {
    color: @theme_selected_bg_color;
    background-image: url("assets/radio-unselected-over.png"); }
  radio:checked, radio:active {
    background-image: url("assets/radio-selected.png");
    color: @theme_fg_color; }
    radio:checked:hover, radio:active:hover {
      background-image: url("assets/radio-selected-over.png");  }
    radio:checked:disabled, radio:active:disabled {
      color: @insensitive_fg_color;
      background-image: url("assets/radio-selected-insensitive.png");  }
  radio:disabled {
    color: @insensitive_fg_color;
    background-image: url("assets/radio-unselected-insensitive.png");  }
  radio:indeterminate {
    background-image: url("assets/radio-mixed.png"); }
  radio:indeterminate:disabled {
    background-image: url("assets/radio-mixed-insensitive.png"); }

/************
 * GtkScale *
 ************/
scale trough, scale fill {
  border: 1px solid @borders;
  background-color: @theme_bg_color;
  box-shadow: none; }
  scale trough:disabled, scale fill:disabled {
    border-color: @insensitive_borders;
    background-color: @insensitive_bg_color; }
  row:selected scale trough, scale row:selected trough, row:selected scale fill, scale row:selected fill, row:selected scale trough:disabled, scale row:selected trough:disabled, row:selected scale fill:disabled, scale row:selected fill:disabled {
    border-color: @insensitive_borders; }
  .osd scale trough, scale .osd trough, .osd scale fill, scale .osd fill {
    border-color: rgba(255, 255, 255, 0.2);
    background-color: rgba(255, 255, 255, 0);
    box-shadow: none;
    outline-color: rgba(255, 255, 255, 0.2); }
    .osd scale trough:disabled, scale .osd trough:disabled, .osd scale fill:disabled, scale .osd fill:disabled {
      background-color: @insensitive_borders; }

scale highlight {
  border: 1px solid @borders;
  background-color: @theme_selected_bg_color; }
  scale highlight:disabled {
    background-color: transparent;
    border-color: transparent; }
  row:selected scale highlight, scale row:selected highlight, row:selected scale highlight:disabled, scale row:selected highlight:disabled {
    border-color: #000; }
  .osd scale highlight, scale .osd highlight {
    border-color: rgba(255, 255, 255, 0.2); }
    .osd scale highlight:disabled, scale .osd highlight:disabled {
      border-color: transparent; }

scale {
  min-height: 10px;
  min-width: 10px;
  padding: 12px; }
  scale fill,
  scale highlight {
    margin: -1px; }
  scale slider {
    /*min-height: 19px;
    min-width: 19px;*/
        background-repeat: no-repeat;
          background-position: center;
                margin: -8px; }
  scale.fine-tune.horizontal {
    padding-top: 9px;
    padding-bottom: 9px;
    min-height: 16px; }
  scale.fine-tune.vertical {
    padding-left: 9px;
    padding-right: 9px;
    min-width: 16px; }
  scale.fine-tune slider {
    margin: -6px; }
  scale.fine-tune fill,
  scale.fine-tune highlight,
  scale.fine-tune trough {
 }
  scale trough { }
  scale.horizontal slider {
      background-image: url("assets/slider-horiz.png");
      min-width: 11px;
      min-height: 19px;}
    scale.horizontal slider:hover {
      background-image: url("assets/slider-horiz-over.png"); }
    scale slider:active { }
    scale.horizontal slider:disabled {
      background-image: url("assets/slider-horiz-insensitive.png"); }
  scale.vertical slider {
      background-image: url("assets/slider-vert.png");
      min-width: 19px;
      min-height: 11px; }
    scale.vertical slider:hover {
      background-image: url("assets/slider-vert-over.png"); }
    scale slider:active { }
    scale.vertical slider:disabled {
      background-image: url("assets/slider-vert-insensitive.png"); }

    row:selected scale slider, row:selected scale slider:disabled {
      border-color: @insensitive_borders; }
  scale value {
    color: alpha(currentColor,0.4); }
  scale marks {
    color: alpha(currentColor,0.4); }
    scale marks.top {
      margin-bottom: 6px;
      margin-top: -12px; }
    scale marks.bottom {
      margin-top: 6px;
      margin-bottom: -12px; }
    scale marks.top {
      margin-right: 6px;
      margin-left: -12px; }
    scale marks.bottom {
      margin-left: 6px;
      margin-right: -12px; }
  scale.fine-tune marks.top {
    margin-bottom: 6px;
    margin-top: -9px; }
  scale.fine-tune marks.bottom {
    margin-top: 6px;
    margin-bottom: -9px; }
  scale.fine-tune marks.top {
    margin-right: 6px;
    margin-left: -9px; }
  scale.fine-tune marks.bottom {
    margin-left: 6px;
    margin-right: -9px; }
  scale.horizontal indicator {
    min-height: 6px;
    min-width: 1px; }
  scale.horizontal.fine-tune indicator {
    min-height: 3px; }
  scale.vertical indicator {
    min-height: 1px;
    min-width: 6px; }
  scale.vertical.fine-tune indicator {
    min-width: 3px; }

/*****************
 * Progress bars *
 *****************/
progressbar {
  padding: 0;
  font-size: 83%;
  color: @theme_fg_color; }
  progressbar trough {
    border-width: 1px;
    border-style: solid;
    border-color: @borders;
    background-color: shade (@theme_bg_color, 0.96); }
  progressbar.osd trough {
    background-color: transparent;
    box-shadow: none;
    border-width: 0; }

progressbar.horizontal trough, progressbar.horizontal progress {
  min-height: 16px; }
progressbar.vertical trough, progressbar.vertical progress {
  min-width: 16px; }
progressbar progress {
  background-color: @progress_color; }
  progressbar progress.vertical { }
  progressbar progress.osd {
    border-width: 0;
    border-radius: 0; }

/*************
 * Level Bar *
 *************/
levelbar trough {
  padding: 2px;
  background-color: transparent;
  border-style: solid;
  border-color: @borders; }
 levelbar block {
  min-width: 34px;
  min-height: 3px; }
levelbar.vertical block {
  min-width: 3px;
  min-height: 34px; }
levelbar.horizontal.discrete block {
  margin: 0 1px; }
levelbar.vertical.discrete block {
  margin: 1px 0; }
levelbar block.filled.low {
  border-color: #c26000;
  background-color: #f57900; }
levelbar block.filled.high {
  border-width: 1px;
  border-style: solid;
  border-color: @borders;
  background-color: @theme_selected_bg_color; }
levelbar block.filled.full {
  border-color: #5aa411;
  background-color: #73d216; }

levelbar block.empty {
  border-width: 1px;
  border-style: solid;
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0.2);
  border-radius: 1px;
  box-shadow: none; }



.view:selected, textview text:selected, iconview:selected, calendar:selected, .view:selected:focus, textview text:selected:focus, iconview:selected:focus, calendar:focus:selected, textview text:selected:hover, calendar:hover:selected, textview text selection,
textview text selection:focus,
textview text selection:hover, flowbox flowboxchild:selected, label selection, label selection:focus, label selection:hover, label selection:backdrop, spinbutton:not(.vertical) selection:focus, spinbutton:not(.vertical) selection,
entry selection:focus,
entry selection, modelbutton.flat:selected, popover.background checkbutton:selected,
popover.background radiobutton:selected,
.menuitem.button.flat:selected, treeview.view:selected, row.activatable:selected, .sidebar:selected {
  background-color: @theme_selected_bg_color;
  color: @theme_selected_fg_color; }


/**********
 * Frames *
 **********/
frame > border{
  border: 1px solid @borders;
  padding: 0; }
  frame > border.flat,
  .frame.flat {
    border-style: none; }
  frame.action-bar {
    padding: 6px;
    border-width: 1px 0 0; }
.frame {
  border: 0; }
.frame:not(notebook)  {
  border: 1px solid @borders; }


actionbar > revealer > box {
  padding: 6px;
  border-width: 1px 0 0;
  border-color: @borders;
  border-style: solid none none; }

scrolledwindow viewport.frame {
  border-style: none; }

separator {
  background: rgba(0, 0, 0, 0.1);
  min-width: 1px;
  min-height: 1px; }

/*********
 * Lists *
 *********/
list {
  background-color:  @theme_base_color;
  border-color: @borders; }
  list row {
    padding: 2px; }

row.activatable,
row.activatable:disabled:active,
row.activatable:disabled:checked {
  background-color: @theme_base_color;
  border-style: none;
  border-radius: 0;
  box-shadow: none; }
  row.activatable:hover {
    background-color: shade(@theme_base_color, 0.96); }
  row.activatable:active { }
  row.activatable:selected {
    background-color: @theme_selected_bg_color;
    color: @theme_selected_fg_color; }
    row.activatable:selected:active {
      background-color: alpha(@theme_selected_bg_color, 0.15); }
    row.activatable:selected:hover {
      background-color: alpha(@theme_selected_bg_color, 0.33); }
row,
row.activatable {
  transition: all 300ms cubic-bezier(0.25, 0.46, 0.45, 0.94); }
  row:hover,
  row.activatable:hover {
    transition: none; }

/*********************
 * App Notifications *
 *********************/
.app-notification,
.app-notification.frame {
  border-width: 0 1px 1px;
  border-style: solid;
  border-color: @borders;
  border-radius: 0 0 6px 6px;
  background-color: alpha(@theme_fg_color, 0.2);
  /*padding: 0 4px;*/ }
  app-notification button {
    padding: 6px; }

/*************
 * Expanders *
 *************/
expander arrow {
  min-width: 16px;
  min-height: 16px;
  -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); }
  expander arrow:dir(rtl) {
    -gtk-icon-source: -gtk-icontheme("pan-end-symbolic-rtl"); }
  expander arrow:hover {
    color: #4d4d4d; }
  expander arrow:checked {
    -gtk-icon-source: -gtk-icontheme("pan-down-symbolic"); }

/************
 * Calendar *
 ***********/
calendar {
  border: 1px solid @borders; }
  calendar.button {
    padding: 0 4px;
    color: shade(@theme_bg_color, 0.85); }
    calendar.button:hover {
      color: @theme_fg_color; }
  calendar.header {
    border-bottom-color: shade(@theme_bg_color, 0.85); }

calendar:disabled {
  color: @insensitive_fg_color;
  border-color: @insensitive_borders; }

calendar:selected,
calendar:selected:focus {
  background-color: @theme_selected_bg_color;
  color: @theme_selected_fg_color; }

/***********
 * Dialogs *
 ***********/
messagedialog .dialog-action-area button {
  padding: 6px; }

messagedialog {
  /*-GtkDialog-button-spacing: 0;*/ }
  messagedialog titlebar {
    border-style: none;
    box-shadow: inset 0 1px  @theme_fg_color; }
  message-dialog.csd {
    border-bottom-left-radius: 9px;
    border-bottom-right-radius: 9px; }
    message-dialog.csd dialog-action-area button {
      padding: 12px;
      border-radius: 0;
      border-width: 1px;
      border-style: solid;
      color: @theme_fg_color;
      background-image: linear-gradient(to bottom, @gradient_default_s, @gradient_default_e);
      border-color: @borders; }
      message-dialog.csd dialog-action-area button:hover {
        border-width: 1px;
        border-style: solid;
        color: @theme_fg_color;
        border-color: @borders;
        background-image: linear-gradient(to bottom, @gradient_hover_s, @gradient_hover_e); }
      message-dialog.csd dialog-action-area button:active {
        border-width: 1px;
        border-style: solid;
        border-color: @borders;
        background-image: linear-gradient(to bottom, @gradient_active_s, @gradient_active_e);
        color:  @theme_fg_color; }
      message-dialog.csd dialog-action-area button:disabled {
        border-width: 1px;
        border-style: solid;
        color: @insensitive_fg_color;
        border-color: @insensitive_borders;
        background-color: @insensitive_bg_color;
        text-shadow: none;
        -gtk-icon-shadow: none; }
      messagedialog.csd dialog-action-area button.suggested-action {
        border-width: 1px;
        border-style: solid;
        color:  @theme_fg_color;
        background-image: linear-gradient(to bottom, #5f9ddd, #4a90d9 40%, #3583d5);
        border-color: #1c5187; }
        messagedialog.csd dialog-action-area button.suggested-action:hover {
          border-width: 1px;
          border-style: solid;
          color:  @theme_fg_color;
          border-color: #1c5187;
          background-image: linear-gradient(to bottom, #85b4e5, #5b9add 40%, #4a90d9); }
        messagedialog.csd dialog-action-area button.suggested-action:active {
          border-width: 1px;
          border-style: solid;
          border-color: #1c5187;
          background-image: linear-gradient(to bottom, #1c5187);
          color:  @theme_fg_color; }
        messagedialog.csd dialog-action-area button.suggested-action:disabled {
          border-width: 1px;
          border-style: solid;
          color: #7f7f7f;
          border-color: @borders;
          background-image: linear-gradient(to bottom,  @theme_fg_color);
          text-shadow: none;
          -gtk-icon-shadow: none; }
      messagedialog.csd dialog-action-area button.destructive-action {
        border-width: 1px;
        border-style: solid;
        color:  @theme_fg_color;
        background-image: linear-gradient(to bottom, #f14141, #ef2929 40%, #ed1212);
        border-color: #8e0b0b; }
        message-dialog.csd dialog-action-area button.destructive-action:hover {
          border-width: 1px;
          border-style: solid;
          color:  @theme_fg_color;
          border-color: #8e0b0b;
          background-image: linear-gradient(to bottom, #f46b6b, #f03c3c 40%, #ef2929); }
        messagedialog.csd dialog-action-area button.destructive-action:active {
          border-width: 1px;
          border-style: solid;
          border-color: #8e0b0b;
          background-image: linear-gradient(to bottom, #8e0b0b);
          color:  @theme_fg_color; }
        message-dialog.csd dialog-action-area button.destructive-action:disabled {
          border-width: 1px;
          border-style: solid;
          color: #7f7f7f;
          border-color: @borders;
          background-image: linear-gradient(to bottom,  @theme_fg_color);
          text-shadow: none;
          -gtk-icon-shadow: none; }
    message-dialog.csd dialog-action-area button, message-dialog.csd dialog-action-area button:hover,
    message-dialog.csd dialog-action-area button:active, message-dialog.csd dialog-action-area button:disabled,
    message-dialog.csd dialog-action-area button.suggested-action, message-dialog.csd dialog-action-area button.suggested-action:hover,
    message-dialog.csd dialog-action-area button.suggested-action:active,
    message-dialog.csd dialog-action-area button.suggested-action:disabled, message-dialog.csd dialog-action-area button.destructive-action, .message-dialog.csd .dialog-action-area button.destructive-action:hover, .message-dialog.csd .dialog-action-area button.destructive-action:active, message-dialog.csd dialog-action-area button.destructive-action:disabled {
      /*border-right-style: none;*/
      border-bottom-style: none; }
    message-dialog.csd dialog-action-area button:last-child {
      border-bottom-right-radius: 7px; }
    message-dialog.csd dialog-action-area button:first-child {
      /*border-left-style: none;*/
      border-bottom-left-radius: 7px; }

filechooser search-bar {
  background-color:  @theme_bg_color;
  border-color:  @theme_fg_color;
  box-shadow: none; }
GtkFileChooserDialog dialog-action-box {
  border-top: 1px solid shade (@theme_bg_color, 0.87); }

GtkAssistant sidebar {
  background-color: @insensitive_fg_color; }
  GtkAssistant sidebar:dir(ltr) {
    border-right: 1px solid @borders; }
  GtkAssistant sidebar:dir(rtl) {
    border-left: 1px solid @borders; }
GtkAssistant sidebar label {
  padding: 6px 12px; }
GtkAssistant sidebar label.highlight {
  font: bold;
  background-color: shade (@theme_bg_color, 1.02); }

/***********
 * Sidebar *
 ***********/
.sidebar {
  border: none; }
  .sidebar:backdrop {
    background-color: @theme_bg_color; }
  .sidebar > scrolledwindow > .frame {
    border-right: 1px solid shade (@theme_bg_color, 0.87); }
    .sidebar > scrolledwindow > .frame:dir(rtl) {
      border-right: none;
      border-left: 1px solid shade (@theme_bg_color, 0.87); }

stacksidebar row {
  padding: 5px 2px; }
  stacksidebar row > label {
    padding-left: 6px;
    padding-right: 6px; }
  stacksidebar row.needs-attention > label {
    background-size: 6px 6px, 0 0; }

/****************
 * File chooser *
 ****************/



/*********
 * Paned *
 *********/
paned separator,
paned separator.vertical {
  -gtk-icon-source: none;
	background-color: shade(@theme_bg_color, 1.0);
  min-width: 3px;
  min-height: 3px;
}

paned separator:hover,
paned separator.vertical:hover {
  background-color: alpha(@theme_selected_bg_color, 0.15);
}

/**************
 * GtkInfoBar *
 **************/
infobar {
  border-style: none; }

.info,
.question,
.warning,
.error {
  background-color: @theme_selected_bg_color;
  color:  @theme_fg_color;
  text-shadow: 0 1px @theme_fg_color;
  border-color: @theme_fg_color; }
.question {
	background-color: @question_color; }
.warning {
	background-color: @warning_color; }
.error {
	background-color: @error_color; }

/************
 * Tooltips *
 ************/
tooltip {
    border-width: 1px;
    border-style: solid;
    border-color: alpha(@tooltip_border, 0.9);
	border-radius: 3px;
	/*background-color: alpha(@gradient_tootip_e, 0.9);*/
	background-image: -gtk-gradient(linear, left top, left bottom, from (@gradient_tootip_s), to (@gradient_tootip_e) );
    color: #414C4F; }

tooltip * {
    background-color: transparent; }


/*****************
 * Color Chooser *
 *****************/
colorswatch {
  border: 1px solid @borders; }
  colorswatch.color-light:hover {
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.4)); }
  colorswatch.color-dark:hover {
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, rgba(255, 255, 255, 0.2)); }
  colorswatch:hover {
    border-color: @border_hover; }
  colorswatch.color-active-badge {
    border-width: 1px; }
    colorswatch.color-active-badge:hover {
      background-image: none; }
    colorswatch.color-active-badge.color-light, colorswatch.color-active-badge.color-light:hover {
      color: rgba(0, 0, 0, 0.3);
      border-color: rgba(0, 0, 0, 0.3); }
    colorswatch.color-active-badge.color-dark, colorswatch.color-active-badge.color-dark:hover {
      color: rgba(255, 255, 255, 0.5);
      border-color: rgba(255, 255, 255, 0.5); }

GtkColorChooserWidget #add-color-button {
  border-color: #bfbfbf;
  background-color: #bfbfbf;
  color:  @theme_fg_color;
  box-shadow: none; }
  GtkColorChooserWidget #add-color-button:hover {
    border-color: @borders;
    background-color: #7f7f7f; }

/********
 * Misc *
 ********/


/**********************
 * Window Decorations *
 *********************/
decoration {
  /*border-radius: 7px 7px 0 0;*/
  box-shadow: 0 1 2 1 rgba(0,0,0,0.2);
  /* this is used for the resize cursor area */
  margin: 10px; }
  decoration.tiled {
    border-radius: 0; }
  decoration.csd.popup {
    border-radius: 0;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.13); }
  decoration.csd.tooltip {
    border-radius: 5px;
    box-shadow: none; }
  decoration.solid-csd {
    border-radius: 0;
    margin: 4px;
    background-color: #ededed;
    border: solid 1px #a8a8a8;
    box-shadow: none; }


button.titlebutton {
  padding: 6px;
  border-color: transparent;
  background-image: none;
  transition-property: border, box-shadow, color;  }
  button.titlebutton:hover {
    color: @theme_fg_color;
    background-color: shade(@theme_bg_color,0.96);}
  button.titlebutton:active {
    color:  @theme_fg_color;
    background-color: shade(@theme_bg_color,0.85);}
 button.titlebutton.close:hover {
    color: @theme_base_color;
    background-color: #e81123;}
 button.titlebutton.close:active {
    color: @theme_base_color;
    background-color: #f1707a;}
